package com.whfc.openapi.api.fim.service;

import com.whfc.fim.dto.FimAlgConfigDTO;
import com.whfc.fim.dto.FimAlgDeviceDTO;
import com.whfc.fim.dto.FimAlgTypeDTO;
import com.whfc.fim.param.FimAlgResultParam;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * @author : qzexing
 * @version : 1.0
 * @date : 2021-01-23 17:05
 */
public interface FimAlgResultService {

    /**
     * 上传识别记录  （视频监控控制台）
     *
     * @param fimAlgResultParam 识别记录
     */
    void algResultUpload(FimAlgResultParam fimAlgResultParam);

    /**
     * 上传识别记录  （边缘盒子）
     *
     * @param fimAlgResultParam 识别记录
     * @param img               识别图片
     */
    void algResultUpload(FimAlgResultParam fimAlgResultParam, MultipartFile img);

    /**
     * 获取算法类型
     *
     * @param deptId 组织机构ID
     * @return 算法类型
     */
    List<FimAlgConfigDTO> getAlgConfig(Integer deptId);

    /**
     * 获取算法类型列表
     *
     * @param deptId 组织机构ID
     * @return 算法类型列表
     */
    List<FimAlgTypeDTO> algTypeList(Integer deptId);

    /**
     * 根据组织机构获取摄像头配置列表
     *
     * @param deptId 组织机构ID
     * @return 摄像头配置
     */
    List<FimAlgDeviceDTO> deviceConfigList(Integer deptId);


    void receiveYuShiData(String body);

    void receiveKunyunData(String body);
}
